#ifndef TRANSPORT_CTRL_LOGIC_H
#define TRANSPORT_CTRL_LOGIC_H

typedef struct
{
	union
	{
		UINT8 Bytes[1];
		struct
		{
			UINT8 fRelayFeedBack:1;
			UINT8 fWaterTemp:1;
			UINT8 fSafeEdge:1;	
			UINT8 fOilPressure:1;
			UINT8 Byte6_NC:4;
		}bit;
	}unDigitalInput;
	union 
	{
		UINT8 Bytes[6];
		struct
		{
			UINT16 u16TempSensor;	  //2
			UINT16 u16TempSensorP_FBK;//2
			UINT16 u16PumpRpm;			  //2
		}bit;
	}unAnalogInput;
}structTransportInput;
typedef struct
{
	union
	{
		UINT8 Bytes[2];
		struct
		{
			UINT8 fLeftOutValve:1;
			UINT8 fChargeRelay:1;
			UINT8 fStartRelay:1;
			UINT8 fStopHoldCtrl:1;
			UINT8 fWaterPumpRelay:1;
			UINT8 fOilPumpCtrl:1;
			UINT8 fPreHeatCtrl:1;
			UINT8 fHorn:1;
			
			UINT8 fLeftInValve:1;
			UINT8 fRightOutValve:1;
			UINT8 fMotionBeep:1;
			UINT8 fRightInValve:1;
			UINT8 fLampCtrl:1;
			UINT8 Byte1NC:3;
		}bit;
	}unDigitalOutput;
	union
	{
		UINT8 Bytes[1];
		struct
		{
			UINT8 u8TempSeneorP;
			
		}bit;
	}unAnalogOutput;
}structTransportOutput;
extern structTransportInput stTransportInput;
extern structTransportOutput stTransportOutput;


extern void vPorcCtrlLogic(void);//1ms
#endif
